//
//  CLComponentBuilder.h
//  ComponentLinkDemo
//
//  Created by zhenby on 2017/2/24.
//  Copyright © 2017年 zhenby. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "CLPComponent.h"
#import "CLPViewComponent.h"
#import "CLPViewControllerComponent.h"

@interface CLComponentBuilder : NSObject


#pragma mark - Build With Property

+ (id<CLPComponent>)buildComponentWithID:(NSString *)componentID
                               className:(Class)className
                              properties:(NSDictionary *)properties;



#pragma mark - Build With XML

+ (id<CLPViewComponent>)buildViewComponentWithID:(NSString *)componentID
                                     xmlFilePath:(NSString *)xmlFilePath;

+ (id<CLPViewControllerComponent>)buildViewControllerComponentWithID:(NSString *)componentID
                                                         xmlFilePath:(NSString *)xmlFilePath;


@end
